//
//  ZXBaseTableViewController.swift
//  ZXWeibo
//
//  Created by mac on 15/11/23.
//  Copyright © 2015年 itcast. All rights reserved.
//

import UIKit

class ZXBaseTableViewController: UITableViewController{

  
    //用户登录标志
    var userlogin = false
    
    override func loadView() {
        //如果用户已经登录，正常加载TableView，否则就创建访客视图
        userlogin ? super.loadView() : setupVistorVidew()
    }
    
    //创建访客视图
    func setupVistorVidew()
    {
        //设置View
        view = vistorView
        
        //设置代理
        vistorView.delegate = self
        
//        view.backgroundColor = UIColor.brownColor()
        //判断是那个类型的控制器
        if self is ZXHomeViewController
        {
            //设置转轮的动画
            vistorView.rotationAnimation()
            
            //监听进入和退出后台
            NSNotificationCenter.defaultCenter().addObserver(self, selector: "didEnterBackground", name: UIApplicationDidEnterBackgroundNotification, object: nil)
            NSNotificationCenter.defaultCenter().addObserver(self, selector: "didBecomeActive", name: UIApplicationDidBecomeActiveNotification, object: nil)
        }
        else if self is ZXMessageViewController
        {
            vistorView.setupVistorView("visitordiscover_image_message", message: "登陆后，别人评论你的微薄")
        }
        else if self is ZXDiscoverViewController
        {
            vistorView.setupVistorView("visitordiscover_image_message", message: "登录后，最新、最热微博尽在掌握，不再会与实事潮流擦肩而过")
        }
        else if self is ZXProfileViewController
        {
            vistorView.setupVistorView("visitordiscover_image_profile", message: "登录后，你的微博、相册、个人资料会显示在这里，展示给别人")
        }
        
        //设置导航栏样式
        navigationItem.leftBarButtonItem = UIBarButtonItem(title: "注册", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewRegisterClick")
        
         navigationItem.rightBarButtonItem = UIBarButtonItem(title: "登陆", style: UIBarButtonItemStyle.Plain, target: self, action: "vistorViewLoginClick")
        
    }
    
    /**
    控制器销毁的时候调用这个方法deinit
    */
    deinit
    {
        //移除通知
        if self is ZXHomeViewController
        {
            NSNotificationCenter.defaultCenter().removeObserver(self)
        }
    }
    
    /**
    进入后台后会调用
    */
    func didEnterBackground()
    {
        NSLog("来了")
        //暂停核心动画
        vistorView.pauseAnimation()
    }
    
    func didBecomeActive()
    {
        //开始核心动画
        vistorView.resumeAnimation()
    }
    
    // MARK: - 懒加载
 /// 访客视图
    private lazy var vistorView: ZXVistorView = ZXVistorView()
    


}

//MARK: - 扩展 控制器实现协议

extension ZXBaseTableViewController: ZXVistorViewDelegate
{
    //MARK: 代理方法
    func vistorViewLoginClick()
    {
        //moodal出另外一个控制器
        print("moodal出了另外一个控制器")
    }
    //注册按钮被点击
    func vistorViewRegisterClick()
    {
        print("注册按钮被点击")
    }
    
}
